home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_200 / 226_01 / manual.txt < prev    next >
Text File  |  1987-12-05  |  22KB  |  382 lines

  1.                                  ART-CEE
  2.                               USER'S GUIDE
  3.  
  4.      ART-CEE is a generic inference engine.  It was written in MIX C on an
  5. Apricot F1, a run-of-the-mill MS-DOS machine.  The source and load modules
  6. have been successfully compiled and executed on IBM XT, AT and clone machines
  7. and should port easily to any MS-DOS machine.  The source code also should
  8. be fairly easy to convert to other C dialects.
  9.  
  10.      Inference engines are a category of artificial intelligence programs.
  11. Like traditional databases, they structure information for later retrieval.
  12. But they also allow can guide the user through solving problems, point out
  13. unnoticed connections within the data and suggest new possibilities.  They
  14. are capable of working with certainties as well as 'fuzzy' information
  15. which is incomplete or tentative.
  16.  
  17.      Information is entered into inferences engines as rules.  In ART-CEE's
  18. case, these rules are "If...then" propositions.  Such rules should be closely
  19. related and basic to the body of knowledge concerned; the quality of the
  20. system built with the inference engine depends most on the accuracy and ade-
  21. quacy of these rules.  The user should enter enough rules to draw the major
  22. connections between the data items, but there is no need to enter everything
  23. that there is to know--after all, inference engines are designed to draw
  24. their own inferences.
  25.  
  26.      Information is retrieved from inference engines through queries.  A query
  27. is a question or a command which causes the inference engine to search the
  28. database, extract the information it knows immediately and/or draw the
  29. necessary inferences to come as close as possible to meeting the request, and
  30. display both its conclusions and how it arrived at them.  ART-CEE has three
  31. kinds of queries that allow a broad range of services to you.
  32.  
  33.      Each rule in ART-CEE is associated with a percentage of truth, occurrence
  34. or certainty.  If the rule is always true its percentage is 100; if it is
  35. never true its percentage is 0.  ART-CEE also uses this number of mark some
  36. rules as logically impossible and to prevent the entering of tautologies.
  37. These percentages are used to control the query process.
  38.  
  39.  
  40. GETTING STARTED
  41.      Before you do anything, make a copy of all ART-CEE files, hide that
  42. copy from neighbors, friends, angry spouses, magnetic fields, dust and
  43. nuclear explosion.
  44.  
  45.      ART-CEE is delivered as four source files.  Compile each source file
  46. individually.  If you are using the MIX system, you may wish to optimize
  47. WORKUP2.C for speed.  Then link the four object files together and name the
  48. output file ART-CEE.COM.  The program will run faster if you link the runtime
  49. functions with the WORKUP objects, but this will increase the size of the
  50. final .COM file to above 60K.
  51.  
  52.      If you find that ART-CEE's space requirements exceed what is available,
  53. the amount of 'stack' and 'heap' used can be affected greatly by adjusting
  54. the value of MAX in the header files.  ART-CEE is supplied with a value of 60
  55. for that variable.  All source files use carry exactly the same value for MAX.
  56.  
  57.      Locate the following files in the same directory on the default drive:
  58. ART-CEE.COM, HELP1.AIH, HELP2.AIH, HELP3.AIH, HELP4.AIH.  If you chose not to
  59. link the MIX runtime functions with the WORKUP objects, the MIX C library
  60. functions also must reside in that directory, unless a PATH command has been
  61. executed.  The runtime module also must have access to the MS-DOS i-o routines
  62. on the system disk; screen blanking will not succeeed if these routines are
  63. not available on the default drive or through a PATH command.
  64.  
  65.  
  66. MAIN MENU AND PROMPT
  67.      The main input screen displays a menu of all available input options.
  68.  
  69.      Commands and default settings may be addressed by entering the single
  70. letter in the appropriate menu phrase.  For instance, to load a data file,
  71. enter "L".  Usually the letter to be entered is the first letter in the
  72. phrase, but in any case it is the only capitalized letter.  Do not enter
  73. the full word or phrase; ART-CEE will try to interpret that entry as a rule
  74. or subject.  ART-CEE will convert your inputs to all-capitals; the program
  75. will execute more quickly if you enter them as capitals in the first place.
  76. All inputs to ART-CEE must end in the "Return" or "Enter" key.  Beginning with
  77. version 1.4, inputs are processed without regard to case.
  78.  
  79.      Rules and queries demand a more involved input.  Any input at the main
  80. prompt that is longer than one character will be treated as a rule or query.
  81.  
  82.  
  83. RULES
  84.      All rules must begin with the word "IF " and contain the word " THEN ".
  85. Between these words must be a subject, and after the " THEN " must be a
  86. predicate (apologies to English teachers who know that such phrases are not
  87. grammatical subjects and predicates).  The entire rule cannot be longer than
  88. eighty characters.  Neither subject nor predicate should contain punctuation.
  89. It follows that the rule should not end in punctuation (the reason for this is
  90. that later matching against the predicate would have to include the same
  91. punctuation, which probably would be incorrect for that usage and a mess to
  92. remember).  Any leading grammatical article ("A ", "AN " or "THE ") in sub-
  93. ject or predicate will be ignored.
  94.  
  95.      ART-CEE searches the database on each rule input to determine if it already
  96. knows the subject or predicate.  If it finds that the rule already exists, you
  97. are given the opportunity to enter new percentages of occurrence for that rule.
  98. Otherwise, if there is room in the database for the new rule, the rule is
  99. added to the knowledge base.  If override of default percentages is turned on,
  100. you are asked to input forward and reverse percents.  Otherwise the defaults
  101. are used.
  102.  
  103.      ART-CEE can handle up to MAX number of different subjects and/or predi-
  104. cates.  Internally, subjects and predicates are stored identically, as the
  105. subject of one rule likely will be the predicate of another.  The maximum
  106. number of rules that can be handled is MAX * (MAX -1).
  107.  
  108.      A forward percentage of occurrence refers to the percent of time that
  109. the rule is true as entered.  If fifty percent of all humans are female, then
  110. the rule "IF HUMAN THEN FEMALE" would have a forward percentage of 50.00000
  111. (trailing zeroes need not be entered).  Reverse percentages refer to the
  112. percent of time that the rule is true in reverse format.  Using the example
  113. above, if one percent of all females are human, the reverse percentage for
  114. "IF HUMAN THEN FEMALE" would be 1.000000.  Percentages must be not less than
  115. zero (zero means "never true") and less than one hundred (one hundred means
  116. "always true").  ART-CEE stores impossible rules with negative percentages
  117. of occurrence, but you cannot enter them at rule entry time (see commands B
  118. and G).
  119.  
  120.  
  121. QUERIES
  122.      Three query formats are available in ART-CEE:  simple query, two-element
  123. query and thinking.
  124.  
  125.      The simple query is a request for all rules concerning just one subject
  126. in the database.  It reports only those rules which contain the subject as
  127. subject or predicate; no inferences are drawn.  Only positive rules are
  128. reported; if a potential rule has not been entered, or if the rule is marked
  129. as impossible, it is not reported.  Simple queries are entered by entering
  130. any of the following phrases, followed by the subject:  WHO, WHO IS, WHO IS A,
  131. WHO IS AN, WHO IS THE, WHAT, WHAT IS, WHAT IS A, WHAT IS AN, WHAT IS THE,
  132. DESCRIBE, DESCRIBE A, DESCRIBE AN, or DESCRIBE THE.  The subject may be
  133. followed by a question mark, which is ignored.  ART-CEE searches the database
  134. for an exact match on the subject.  If the subject is found, all forward
  135. rules for that subject are reported to the computer monitor, followed by all
  136. reverse rules.
  137.  
  138.      The two-element query asks is a certain rule is true.  Using the above
  139. example, to find out what percentage of all females are human, the input
  140. would be:  "IF FEMALE THEN HUMAN?"  Note that the input is exactly like
  141. the input for the entering of the rule, except that the rule ends in a ques-
  142. tion mark.  A